{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib\n",
    "from matplotlib import pyplot as plt\n",
    "%matplotlib inline \n",
    "\n",
    "matplotlib.rc('figure', figsize=(12, 5))\n",
    "font = {'family' : 'normal',\n",
    "        'weight' : 'bold',\n",
    "        'size'   : 16}\n",
    "\n",
    "matplotlib.rc('font', **font)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "# from http://zyxue.github.io/2017/09/21/python-timeit-decorator.html\n",
    "import datetime\n",
    "import time\n",
    "from functools import wraps\n",
    "from typing import Any, Callable\n",
    "\n",
    "\n",
    "def timeit(func: Callable[..., Any]) -> Callable[..., Any]:\n",
    "    \"\"\"Times a function, usually used as decorator\"\"\"\n",
    "\n",
    "    @wraps(func)\n",
    "    def timed_func(*args: Any, **kwargs: Any) -> Any:\n",
    "        \"\"\"Returns the timed function\"\"\"\n",
    "        start_time = time.time()\n",
    "        result = func(*args, **kwargs)\n",
    "        elapsed_time = datetime.timedelta(seconds=(time.time() - start_time))\n",
    "        print(\"time spent on %s: %s\", func.__name__, elapsed_time)\n",
    "        return result\n",
    "\n",
    "    return timed_func\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# SAT Solver"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Requirement already satisfied: dd in /Users/ben/anaconda3/lib/python3.6/site-packages (0.5.5)\n",
      "Requirement already satisfied: pydot>=1.2.2 in /Users/ben/anaconda3/lib/python3.6/site-packages (from dd) (1.4.1)\n",
      "Requirement already satisfied: setuptools>=19.6 in /Users/ben/anaconda3/lib/python3.6/site-packages (from dd) (49.6.0.post20200814)\n",
      "Requirement already satisfied: ply<=3.10,>=3.4 in /Users/ben/anaconda3/lib/python3.6/site-packages (from dd) (3.10)\n",
      "Requirement already satisfied: psutil>=3.2.2 in /Users/ben/.local/lib/python3.6/site-packages (from dd) (5.7.0)\n",
      "Requirement already satisfied: networkx>=1.9.1 in /Users/ben/anaconda3/lib/python3.6/site-packages (from dd) (2.5)\n",
      "Requirement already satisfied: astutils>=0.0.1 in /Users/ben/anaconda3/lib/python3.6/site-packages (from dd) (0.0.4)\n",
      "Requirement already satisfied: pyparsing>=2.1.4 in /Users/ben/anaconda3/lib/python3.6/site-packages (from pydot>=1.2.2->dd) (2.4.7)\n",
      "Requirement already satisfied: decorator>=4.3.0 in /Users/ben/anaconda3/lib/python3.6/site-packages (from networkx>=1.9.1->dd) (4.4.2)\n",
      "Note: you may need to restart the kernel to use updated packages.\n"
     ]
    }
   ],
   "source": [
    "pip install dd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Requirement already satisfied: omega in /Users/ben/anaconda3/lib/python3.6/site-packages (0.3.1)\n",
      "Requirement already satisfied: pydot>=1.2.2 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (1.4.1)\n",
      "Requirement already satisfied: natsort>=3.5.3 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (7.0.1)\n",
      "Requirement already satisfied: humanize>=0.5.1 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (3.0.1)\n",
      "Requirement already satisfied: astutils>=0.0.3 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (0.0.4)\n",
      "Requirement already satisfied: dd>=0.5.5 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (0.5.5)\n",
      "Requirement already satisfied: ply<=3.10,>=3.6 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (3.10)\n",
      "Requirement already satisfied: networkx>=2.0 in /Users/ben/anaconda3/lib/python3.6/site-packages (from omega) (2.5)\n",
      "Requirement already satisfied: pyparsing>=2.1.4 in /Users/ben/anaconda3/lib/python3.6/site-packages (from pydot>=1.2.2->omega) (2.4.7)\n",
      "Requirement already satisfied: setuptools in /Users/ben/anaconda3/lib/python3.6/site-packages (from humanize>=0.5.1->omega) (49.6.0.post20200814)\n",
      "Requirement already satisfied: psutil>=3.2.2 in /Users/ben/.local/lib/python3.6/site-packages (from dd>=0.5.5->omega) (5.7.0)\n",
      "Requirement already satisfied: decorator>=4.3.0 in /Users/ben/anaconda3/lib/python3.6/site-packages (from networkx>=2.0->omega) (4.4.2)\n",
      "Note: you may need to restart the kernel to use updated packages.\n"
     ]
    }
   ],
   "source": [
    "pip install omega"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "import seaborn as sns; sns.set()\n",
    "\n",
    "def visualize_solution(solution):\n",
    "    \"\"\"visualize a board of arbitrary size\"\"\"\n",
    "    if isinstance(solution, dict):\n",
    "        solution = list(solution.values())\n",
    "    if isinstance(solution, list):\n",
    "        solution = np.array(solution)\n",
    "    \n",
    "    n = int(np.sqrt(solution.size))\n",
    "    plt.figure(figsize=(5, 3))\n",
    "    sns.heatmap(\n",
    "        solution.reshape((n, n)),\n",
    "        cbar=False,\n",
    "        cmap=\"YlGnBu\",\n",
    "        annot=True\n",
    "    )\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "\"\"\"\n",
    "From the dd examples on github:\n",
    "https://github.com/tulip-control/dd/blob/0f6d16483cc13078edebac9e89d1d4b99d22991e/examples/queens.py\n",
    "\n",
    "N-Queens problem using one-hot encoding.\n",
    "Reference\n",
    "=========\n",
    "Henrik R. Andersen\n",
    "    \"An introduction to binary decision diagrams\"\n",
    "    Lecture notes for \"Efficient Algorithms and Programs\", 1999\n",
    "    The IT University of Copenhagen\n",
    "    Sec.6.1\n",
    "\"\"\"\n",
    "import pickle\n",
    "import time\n",
    "from dd import bdd as _bdd\n",
    "from omega.logic.syntax import conj, disj\n",
    "\n",
    "\n",
    "def solve_queens(n):\n",
    "    \"\"\"Return set of models for the `n`-queens problem.\n",
    "    @rtype: `int`, `BDD`\n",
    "    \"\"\"\n",
    "    vrs = [_var_str(i, j) for i in range(n) for j in range(n)]\n",
    "    bdd = _bdd.BDD()\n",
    "    bdd.declare(*vrs)\n",
    "    s = queens_formula(n)\n",
    "    u = bdd.add_expr(s)\n",
    "    return u, bdd\n",
    "\n",
    "\n",
    "def queens_formula(n):\n",
    "    \"\"\"Return a non-trivial propositional formula for the problem.\"\"\"\n",
    "    # i = row index\n",
    "    # j = column index\n",
    "    present = at_least_one_queen_per_row(n)\n",
    "    rows = at_most_one_queen_per_line(True, n)\n",
    "    cols = at_most_one_queen_per_line(False, n)\n",
    "    slash = at_most_one_queen_per_diagonal(True, n)\n",
    "    backslash = at_most_one_queen_per_diagonal(False, n)\n",
    "    s = conj([present, rows, cols, slash, backslash])\n",
    "    return s\n",
    "\n",
    "\n",
    "def at_least_one_queen_per_row(n):\n",
    "    \"\"\"Return formula as `str`.\"\"\"\n",
    "    c = list()\n",
    "    for i in range(n):\n",
    "        xijs = [_var_str(i, j) for j in range(n)]\n",
    "        s = disj(xijs)\n",
    "        c.append(s)\n",
    "    return conj(c)\n",
    "\n",
    "\n",
    "def at_most_one_queen_per_line(row, n):\n",
    "    \"\"\"Return formula as `str`.\n",
    "    @param row: if `True`, then constrain rows, else columns.\n",
    "    \"\"\"\n",
    "    c = list()\n",
    "    for i in range(n):\n",
    "        if row:\n",
    "            xijs = [_var_str(i, j) for j in range(n)]\n",
    "        else:\n",
    "            xijs = [_var_str(j, i) for j in range(n)]\n",
    "        s = mutex(xijs)\n",
    "        c.append(s)\n",
    "    return conj(c)\n",
    "\n",
    "\n",
    "def at_most_one_queen_per_diagonal(slash, n):\n",
    "    \"\"\"Return formula as `str`.\n",
    "    @param slash: if `True`, then constrain anti-diagonals,\n",
    "        else diagonals.\n",
    "    \"\"\"\n",
    "    c = list()\n",
    "    if slash:\n",
    "        a = -n\n",
    "        b = n\n",
    "    else:\n",
    "        a = 0\n",
    "        b = 2 * n\n",
    "    for k in range(a, b):\n",
    "        if slash:\n",
    "            ij = [(i, i + k) for i in range(n)]\n",
    "        else:\n",
    "            ij = [(i, k - i) for i in range(n)]\n",
    "        ijs = [(i, j) for i, j in ij if 0 <= i < n and 0 <= j < n]\n",
    "        if not ij:\n",
    "            continue\n",
    "        xijs = [_var_str(i, j) for i, j in ijs]\n",
    "        s = mutex(xijs)\n",
    "        c.append(s)\n",
    "    return conj(c)\n",
    "\n",
    "\n",
    "def mutex(v):\n",
    "    \"\"\"Return formula for at most one variable `True`.\n",
    "    @param v: iterable of variables as `str`\n",
    "    \"\"\"\n",
    "    v = set(v)\n",
    "    c = list()\n",
    "    for x in v:\n",
    "        rest = disj(y for y in v if y != x)\n",
    "        s = '{x} -> !({rest})'.format(x=x, rest=rest)\n",
    "        c.append(s)\n",
    "    return conj(c)\n",
    "\n",
    "\n",
    "def _var_str(i, j):\n",
    "    \"\"\"Return variable for occupancy of cell at {row: i, column: j}.\"\"\"\n",
    "    return 'x{i}{j}'.format(i=i, j=j)\n",
    "\n",
    "\n",
    "def benchmark(n):\n",
    "    \"\"\"Run for `n` queens and print statistics.\"\"\"\n",
    "    t0 = time.time()\n",
    "    u, bdd = solve_queens(n)\n",
    "    t1 = time.time()\n",
    "    dt = t1 - t0\n",
    "    \n",
    "    for i, d in enumerate(bdd.pick_iter(u)):\n",
    "        if len(d) > 0:\n",
    "            visualize_solution(d)\n",
    "            break\n",
    "    n_solutions = bdd.count(u)\n",
    "\n",
    "    s = (\n",
    "        '------\\n'\n",
    "        'queens: {n}\\n'\n",
    "        'time: {dt} (sec)\\n'\n",
    "        'node: {u}\\n'\n",
    "        'total nodes: {k}\\n'\n",
    "        'number solutions: {n_solutions}\\n'\n",
    "        '------\\n'\n",
    "    ).format(\n",
    "        n=n, dt=dt, u=u, k=len(bdd),\n",
    "        n_solutions=n_solutions,\n",
    "    )\n",
    "    print(s)\n",
    "    return dt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 0\n",
      "time: 0.0005481243133544922 (sec)\n",
      "node: 1\n",
      "total nodes: 1\n",
      "number solutions: 1\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAATgAAADECAYAAAALWD28AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAE2UlEQVR4nO3bsWuUdxzH8W8uaoZDiEKyuIpLENdrhgiii0sQ3JxiNUKFgh2Ekj/AwUW6KcY/INv9DRkyZAkRF1unLslR8KZYI/p0KrRgU6pNnrtPXq/xuYPnM715nvtxE03TNAUQqNP2AIDDInBALIEDYgkcEEvggFgnjvZ2r4/2dsAxceGzVz3BAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+AYOe/e/V7Xr39Xi4vftz2FMSdwjJSXL3+uW7d+rDdvfm17CgFO/NsXtre3a319vQaDQVVVzc7O1sLCQl28ePHQx3H83Lz5Q1279k3t7PzW9hQCTDRN0/zTh6urq/X48ePqdDrV7Xarqmpvb68+ffpUDx8+rKWlpf94u9dfs5Vj4NWrX2pu7nxdufJtnT7drX7/p7YnMRYufPbqga+oL168qHv37tXW1lZtbm7W5uZmbW1t1fLycq2urh7KTI63ubnzbU8gyIGvqCdPnqzhcFiDwaCmp6erqmo4HNbbt2/r1KlTRzIQ4EsdGLgHDx7UyspKra2t/e365ORkPXr06FCHAXytAwO3uLhYvV6vNjY2and3t5qmqZmZmer1enXu3Lmj2gjwRQ48ZPj/OWQADsMXHDIAjDOBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYAgfEEjgglsABsQQOiCVwQCyBA2IJHBBL4IBYE03TNG2PADgMnuCAWAIHxBI4IJbAAbEEDoglcEAsgQNiCRwQS+CAWAIHxBI4Rk6/36/Lly/X/Px8PX/+vO05jDH/RWWk7Ozs1NWrV+vGjRt15syZevr0aa2trdWlS5fansYY8gTHSNnY2KgPHz7U3bt36/79+9XpdGp9fb3tWYwpgWOk7O7uVlXV9PR0TU1NVbfbrcFg0PIqxpXAMVL+/MVkYmKi5SUkEDhGyszMTFVVDYfD2t/fr729vZqdnW15FePqRNsD4K96vV5NTk7Ws2fP6uzZs/Xx48daWFhoexZjyikqI6ff79eTJ0/q/fv3dfv27bpz507bkxhTAgfE8hscEEvggFgCB8QSOCCWwAGxBA6IJXBArD8Adk6x785a5GUAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 1\n",
      "time: 0.0011169910430908203 (sec)\n",
      "node: 2\n",
      "total nodes: 2\n",
      "number solutions: 1\n",
      "------\n",
      "\n",
      "------\n",
      "queens: 2\n",
      "time: 0.0038690567016601562 (sec)\n",
      "node: -1\n",
      "total nodes: 27\n",
      "number solutions: 0\n",
      "------\n",
      "\n",
      "------\n",
      "queens: 3\n",
      "time: 0.011776924133300781 (sec)\n",
      "node: -1\n",
      "total nodes: 212\n",
      "number solutions: 0\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 4\n",
      "time: 0.022096872329711914 (sec)\n",
      "node: -912\n",
      "total nodes: 912\n",
      "number solutions: 2\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 5\n",
      "time: 0.16524314880371094 (sec)\n",
      "node: -3641\n",
      "total nodes: 3641\n",
      "number solutions: 10\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 6\n",
      "time: 0.21957826614379883 (sec)\n",
      "node: -13420\n",
      "total nodes: 13420\n",
      "number solutions: 4\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 7\n",
      "time: 1.1042938232421875 (sec)\n",
      "node: -55792\n",
      "total nodes: 55792\n",
      "number solutions: 40\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 8\n",
      "time: 4.168174743652344 (sec)\n",
      "node: -250788\n",
      "total nodes: 250788\n",
      "number solutions: 92\n",
      "------\n",
      "\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "------\n",
      "queens: 9\n",
      "time: 32.24222993850708 (sec)\n",
      "node: -1200084\n",
      "total nodes: 1200084\n",
      "number solutions: 352\n",
      "------\n",
      "\n"
     ]
    }
   ],
   "source": [
    "n_max = 9\n",
    "fname = 'dd_times.p'\n",
    "times = dict()\n",
    "for n in range(n_max + 1):\n",
    "    t = benchmark(n)\n",
    "    times[n] = t\n",
    "f = open(fname, 'wb')\n",
    "pickle.dump(times, f)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Genetic algorithm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_scores(scores):\n",
    "    plt.plot(\n",
    "        list(range(len(scores))),\n",
    "        scores,\n",
    "        '--o',\n",
    "    )\n",
    "    plt.ylabel('score')\n",
    "    plt.xlabel('iterations')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Collecting python-chess\n",
      "  Downloading python_chess-0.31.4-py3-none-any.whl (134 kB)\n",
      "\u001b[K     |████████████████████████████████| 134 kB 354 kB/s eta 0:00:01\n",
      "\u001b[?25hInstalling collected packages: python-chess\n",
      "Successfully installed python-chess-0.31.4\n"
     ]
    }
   ],
   "source": [
    "!pip install python-chess"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><use transform=\"translate(285, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><use transform=\"translate(15, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><use transform=\"translate(105, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><use transform=\"translate(330, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><use transform=\"translate(240, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><use transform=\"translate(150, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><use transform=\"translate(60, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>"
      ],
      "text/plain": [
       "'<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><use transform=\"translate(285, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><use transform=\"translate(15, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><use transform=\"translate(105, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><use transform=\"translate(330, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><use transform=\"translate(240, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><use transform=\"translate(150, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><use transform=\"translate(60, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>'"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import chess\n",
    "import chess.svg\n",
    "from IPython.display import display\n",
    "\n",
    "def queen_to_str(q, N=8):\n",
    "    prev = str(q) if q > 0 else ''\n",
    "    post = str((N-1)-q) if q < (N-1) else ''\n",
    "    return prev + 'Q' + post\n",
    "\n",
    "assert queen_to_str(1) == '1Q6'\n",
    "assert queen_to_str(0) == 'Q7'\n",
    "assert queen_to_str(7) == '7Q'\n",
    "\n",
    "def show_board(queens):\n",
    "    \"\"\"This only works for 8 queens...\"\"\"\n",
    "    fen = '/'.join([queen_to_str(q) for q in queens])\n",
    "    display(chess.svg.board(board=chess.Board(fen), size=300))\n",
    "    \n",
    "solution = np.array([2, 4, 6, 8, 3, 1, 7, 5]) - 1\n",
    "show_board(solution)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "def cost_function(props):\n",
    "    \"\"\"Given a props vector from a particle,\n",
    "    a vector of queens' positions, how right are we?\n",
    "    \"\"\"\n",
    "    res = 0\n",
    "    for i1, q1 in enumerate(props[:-1]):\n",
    "        for i2, q2 in enumerate(props[i1+1:], i1+1):\n",
    "            if (q1 != q2) and (abs(i1 - i2) != abs(q1 - q2)):\n",
    "                res += 1\n",
    "    return res"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [],
   "source": [
    "import random\n",
    "from typing import Optional, List, Tuple\n",
    "import numpy as np\n",
    "\n",
    "class Chromosome:\n",
    "    def __init__(self, configuration: Optional[List]=None, nq: Optional[int]=None):\n",
    "        \"\"\"make sure either nq or configuration is given!\n",
    "        \"\"\"\n",
    "        assert not (nq is None and configuration is None)\n",
    "        if configuration is None:\n",
    "            self.nq = nq\n",
    "            self.max_fitness = np.sum(np.arange(nq))\n",
    "            self.configuration = [\n",
    "                random.randint(1, nq) for _ in range(nq)\n",
    "            ]\n",
    "        else:\n",
    "            self.configuration = configuration\n",
    "            self.nq = len(configuration)\n",
    "            self.max_fitness = np.sum(np.arange(self.nq))\n",
    "    \n",
    "    def fitness(self):\n",
    "        return cost_function(self.configuration) / self.max_fitness\n",
    "\n",
    "    def mutate(self):\n",
    "        \"\"\"A mutation: randomly changing a value\n",
    "        inside a chromosome\"\"\"\n",
    "        ind = random.randint(0, self.nq-1)\n",
    "        val = random.randint(1, self.nq)\n",
    "        self.configuration[ind] = val\n",
    "\n",
    "class GeneticQueen:\n",
    "    def __init__(self, nq, population_size=20, mutation_prob=0.5):\n",
    "        self.nq = nq\n",
    "        self.population_size = population_size\n",
    "        self.mutation_prob = mutation_prob\n",
    "        self.population = [Chromosome(nq=nq) for _ in range(population_size)]\n",
    "        self.solution = None\n",
    "        self.best_fitness = None\n",
    "\n",
    "    def iterate(self):\n",
    "        \"\"\"create a new generation\n",
    "        \"\"\"\n",
    "        new_population = []\n",
    "        best_fitness = -1\n",
    "        for i in range(len(self.population)):\n",
    "            p1, p2 = self.get_parents()\n",
    "            child = Chromosome(self.cross_over(p1, p2))\n",
    "            \n",
    "            if random.random() < self.mutation_prob:\n",
    "                child.mutate()\n",
    "                \n",
    "            new_population.append(child)\n",
    "            fit = child.fitness()\n",
    "            if fit > best_fitness:\n",
    "                best_fitness = fit\n",
    "            if fit == 1:\n",
    "                self.solution = child\n",
    "                break\n",
    "                \n",
    "        self.best_fitness = best_fitness\n",
    "        self.population = new_population\n",
    "        \n",
    "    def cross_over(self, p1, p2):\n",
    "        \"\"\"cross_over between two chromosomes\n",
    "        \"\"\"\n",
    "        return [\n",
    "            yi\n",
    "            if random.random() > 0\n",
    "            else xi\n",
    "            for xi, yi in zip(\n",
    "                p1.configuration,\n",
    "                p2.configuration\n",
    "            )\n",
    "        ]\n",
    "    \n",
    "    def get_parents(self) -> Tuple[Chromosome, Chromosome]:\n",
    "        \"\"\"choose parents to reproduce;\n",
    "        fittest more likely to be chosen\n",
    "        \"\"\"\n",
    "        weights = [chrom.fitness() for chrom in self.population]\n",
    "        return tuple(\n",
    "            random.choices(\n",
    "                self.population, \n",
    "                weights=weights,\n",
    "                k=2\n",
    "            )\n",
    "        )\n",
    "    \n",
    "    def visualize_solution(self):\n",
    "        \"\"\"visualize a board of arbitrary size\"\"\"\n",
    "        if self.nq == 8:\n",
    "            show_board(np.array(self.solution.configuration)-1)\n",
    "        else:\n",
    "            board = np.zeros(shape=(self.nq, self.nq))\n",
    "            for row, col in enumerate(self.solution.configuration):\n",
    "                board[row, col-1] = 1\n",
    "            plt.figure(figsize=(5, 3))\n",
    "            sns.heatmap(\n",
    "                board,\n",
    "                cbar=False,\n",
    "                cmap=\"YlGnBu\",\n",
    "                annot=True\n",
    "            )\n",
    "            plt.show()\n",
    "\n",
    "@timeit\n",
    "def ga_solver(nq):\n",
    "    fitness_trace = []\n",
    "    gq = GeneticQueen(nq=nq)\n",
    "    generation = 0\n",
    "    while not gq.solution:\n",
    "        gq.iterate()\n",
    "        if (generation % 100) == 0:\n",
    "            print('Generation {}'.format(generation))\n",
    "            print('Maximum Fitness = {:.3f}'.format(gq.best_fitness))\n",
    "        fitness_trace.append(gq.best_fitness)\n",
    "        generation += 1\n",
    "\n",
    "    gq.visualize_solution()\n",
    "    return fitness_trace"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Generation 0\n",
      "Maximum Fitness = 0.893\n",
      "Generation 100\n",
      "Maximum Fitness = 0.893\n",
      "Generation 200\n",
      "Maximum Fitness = 0.893\n",
      "Generation 300\n",
      "Maximum Fitness = 0.929\n",
      "Generation 400\n",
      "Maximum Fitness = 0.857\n",
      "Generation 500\n",
      "Maximum Fitness = 0.893\n",
      "Generation 600\n",
      "Maximum Fitness = 0.857\n",
      "Generation 700\n",
      "Maximum Fitness = 0.893\n",
      "Generation 800\n",
      "Maximum Fitness = 0.893\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><use transform=\"translate(105, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><use transform=\"translate(240, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><use transform=\"translate(330, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><use transform=\"translate(15, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><use transform=\"translate(195, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><use transform=\"translate(285, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><use transform=\"translate(60, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><use transform=\"translate(150, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>"
      ],
      "text/plain": [
       "'<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><use transform=\"translate(105, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><use transform=\"translate(240, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><use transform=\"translate(330, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><use transform=\"translate(15, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><use transform=\"translate(195, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><use transform=\"translate(285, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><use transform=\"translate(60, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><use transform=\"translate(150, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>'"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "time spent on %s: %s ga_solver 0:00:05.943256\n"
     ]
    }
   ],
   "source": [
    "fitness_trace = ga_solver(8)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_scores(fitness_trace)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Particle Swarm Optimization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {},
   "outputs": [],
   "source": [
    "NQUEENS = 8\n",
    "SOLVED_COST = np.sum(np.arange(NQUEENS))\n",
    "assert SOLVED_COST == 28"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "class Particle:\n",
    "    best_fitness: int = 0\n",
    "    \n",
    "    def __init__(\n",
    "        self, N=None, props=None,\n",
    "        velocities=None\n",
    "    ):\n",
    "        \"\"\"Either specify N for randomization,\n",
    "        or props and velocities\n",
    "        \"\"\"\n",
    "        if props is None:\n",
    "            # random initialization\n",
    "            self.current_particle = np.random.randint(0, N-1, N)\n",
    "            self.best_state = np.random.randint(0, N-1, N)\n",
    "            self.velocities = np.random.uniform(-(N-1), N-1, N)\n",
    "        else:\n",
    "            self.current_particle = props\n",
    "            self.best_state = props\n",
    "            self.velocities = velocities\n",
    "    \n",
    "        self.best_fitness = cost_function(self.best_state)\n",
    "                \n",
    "    def set_new_best(self, props: List[int], new_fitness: int):    \n",
    "        self.best_state = props\n",
    "        self.best_fitness = new_fitness\n",
    "        \n",
    "    def __repr__(self):\n",
    "        return f'{self.__class__.__name__}(\\n' +\\\n",
    "            f'\\tcurrent_particle={self.current_particle}\\n'  +\\\n",
    "            f'\\best_state={self.best_state}\\n'  +\\\n",
    "            f'\\tvelocities={self.velocities}\\n'  +\\\n",
    "            f'\\best_fitness={self.best_fitness}\\n'  +\\\n",
    "            ')'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [],
   "source": [
    "def init_particles(N: int, n_particles: int):\n",
    "    return [Particle(N=N) for i in range(n_particles)]\n",
    "\n",
    "particles = init_particles(8, 20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Particle(\n",
       "\tcurrent_particle=[0 4 5 0 4 3 6 4]\n",
       "\best_state=[0 3 0 4 4 2 2 2]\n",
       "\tvelocities=[-0.6270056  -0.30472465  5.12387191 -4.33869837  6.18816917 -0.06294143\n",
       "  5.88282897  5.92039062]\n",
       "\best_fitness=20\n",
       ")"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "particles[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0, 4, 5, 0, 4, 3, 6, 4])"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "particles[0].current_particle"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0, 4, 5, 0, 4, 3, 6, 4])"
      ]
     },
     "execution_count": 56,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "particles[0].current_particle"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "28"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "cost_function(np.array([7, 9, 3, 8, 2, 4, 6, 1]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Particle(\n",
       "\tcurrent_particle=[0 4 5 0 4 3 6 4]\n",
       "\best_state=[0 3 0 4 4 2 2 2]\n",
       "\tvelocities=[-0.6270056  -0.30472465  5.12387191 -4.33869837  6.18816917 -0.06294143\n",
       "  5.88282897  5.92039062]\n",
       "\best_fitness=20\n",
       ")"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "particles[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [],
   "source": [
    "# cdef int[:] get_best_particle(list particles):\n",
    "# def get_best_particle(particles: List[Particles]) -> Particle:\n",
    "\n",
    "def get_best_particle(particles):\n",
    "    best_particle = 0  # int\n",
    "    best_score = -1  # int\n",
    "    score = -1  # int\n",
    "    for i, particle in enumerate(particles):\n",
    "        score = cost_function(particle.current_particle)\n",
    "        if score > best_score:\n",
    "            best_score = score\n",
    "            best_ind = i\n",
    "    return particles[best_ind].current_particle, best_score"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [],
   "source": [
    "particles = particles[:-1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [],
   "source": [
    "particles.append(Particle(props=solution))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([1, 3, 5, 7, 2, 0, 6, 4]), 28)"
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "get_best_particle(particles)  #  == (solution, 28)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Particle(\n",
       "\tcurrent_particle=[0 4 5 0 4 3 6 4]\n",
       "\best_state=[0 3 0 4 4 2 2 2]\n",
       "\tvelocities=[-0.6270056  -0.30472465  5.12387191 -4.33869837  6.18816917 -0.06294143\n",
       "  5.88282897  5.92039062]\n",
       "\best_fitness=20\n",
       ")"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "particles[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [],
   "source": [
    "# good explanation and pseudocode https://en.wikipedia.org/wiki/Particle_swarm_optimization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [],
   "source": [
    "def particle_swarm_optimization(\n",
    "    N: int, omega: float, phip: float, phig: float,\n",
    "    n_particles: int, visualize=False, max_iteration=999999\n",
    ") -> List[int]:\n",
    "    \"\"\"Particle Swarm Optimization\n",
    "    \n",
    "    Parameters:\n",
    "    -----------\n",
    "    N - number of queens\n",
    "    omega - a decay parameter\n",
    "    phip - controls the contribution of the local search\n",
    "    phig - controls the contribution of the global search\n",
    "    n_particles - the number of particles\n",
    "    visualize - if the solutions should be visualized by images\n",
    "    max_iteration - for early stopping\n",
    "    \n",
    "    Returns:\n",
    "    --------\n",
    "    best_particle - the best solution\n",
    "    scores - the best scores over iterations\n",
    "    \n",
    "    Highly sensitive to the choice of parameters!\n",
    "    \"\"\"\n",
    "    def print_best():\n",
    "        print(f'iteration {iteration} - best particle: {best_particle}, score: {best_score}')\n",
    "\n",
    "    solved_cost = np.sum(np.arange(N))\n",
    "    particles = init_particles(N=N, n_particles=n_particles)\n",
    "    iteration = 0\n",
    "    best_particle, best_score = get_best_particle(particles)\n",
    "    scores = [ best_score ]\n",
    "    if visualize:\n",
    "        print('iteration:', iteration)\n",
    "        show_board(best_particle)\n",
    "    while best_score < solved_cost and iteration < max_iteration:\n",
    "        if (iteration % 500) == 0 or iteration == 0:\n",
    "            print_best()\n",
    "        \n",
    "        for particle in particles:\n",
    "            rg = np.random.rand((N))\n",
    "            rp = np.random.rand((N))\n",
    "            delta_p = particle.best_state - particle.current_particle\n",
    "            delta_g = best_particle - particle.current_particle\n",
    "            update = (rp * phip * delta_p +\\\n",
    "                rg * phig * delta_g)     # local vs global\n",
    "            #print('particle:')\n",
    "            #print(delta_p)\n",
    "            #print(delta_g)\n",
    "            #print(update)\n",
    "            particle.velocities = omega * particle.velocities + update\n",
    "            #print(particle.velocities)\n",
    "            particle.current_particle = (\n",
    "                np.abs(particle.current_particle + particle.velocities) % N\n",
    "            ).astype(int)\n",
    "            # update the particle best\n",
    "            current_fitness = cost_function(particle.current_particle)\n",
    "            if current_fitness > particle.best_fitness:\n",
    "                particle.set_new_best(particle.current_particle, current_fitness)\n",
    "            \n",
    "        best_particle_cand, best_score_cand = get_best_particle(particles)\n",
    "        if best_score_cand > best_score:\n",
    "            best_particle, best_score = best_particle_cand, best_score_cand\n",
    "            if iteration > 0 and visualize:\n",
    "                print('iteration:', iteration)\n",
    "                show_board(best_particle)\n",
    "        scores.append(best_score)\n",
    "        iteration += 1\n",
    "\n",
    "    print_best()\n",
    "    return best_particle, scores"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "iteration: 0\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><use transform=\"translate(150, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><use transform=\"translate(60, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><use transform=\"translate(285, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><use transform=\"translate(105, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><use transform=\"translate(240, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><use transform=\"translate(15, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><use transform=\"translate(195, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>"
      ],
      "text/plain": [
       "'<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><use transform=\"translate(150, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><use transform=\"translate(60, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><use transform=\"translate(285, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><use transform=\"translate(105, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><use transform=\"translate(240, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><use transform=\"translate(15, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><use transform=\"translate(195, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>'"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "iteration 0 - best particle: [4 0 5 2 6 1 3 4], score: 25\n",
      "iteration: 5\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><use transform=\"translate(60, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><use transform=\"translate(330, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><use transform=\"translate(240, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><use transform=\"translate(60, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><use transform=\"translate(285, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><use transform=\"translate(105, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><use transform=\"translate(15, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>"
      ],
      "text/plain": [
       "'<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><use transform=\"translate(60, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><use transform=\"translate(330, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><use transform=\"translate(240, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><use transform=\"translate(60, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><use transform=\"translate(285, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><use transform=\"translate(105, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><use transform=\"translate(15, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>'"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "iteration: 30\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><use transform=\"translate(60, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><use transform=\"translate(150, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><use transform=\"translate(240, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><use transform=\"translate(330, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><use transform=\"translate(105, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><use transform=\"translate(15, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><use transform=\"translate(105, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><use transform=\"translate(285, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>"
      ],
      "text/plain": [
       "'<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><use transform=\"translate(60, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><use transform=\"translate(150, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><use transform=\"translate(240, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><use transform=\"translate(330, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><use transform=\"translate(105, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><use transform=\"translate(15, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><use transform=\"translate(105, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><use transform=\"translate(285, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>'"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "iteration 500 - best particle: [6 2 0 2 7 5 3 1], score: 27\n",
      "iteration: 520\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><use transform=\"translate(285, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><use transform=\"translate(15, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><use transform=\"translate(150, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><use transform=\"translate(60, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><use transform=\"translate(330, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><use transform=\"translate(240, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><use transform=\"translate(105, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>"
      ],
      "text/plain": [
       "'<svg height=\"300\" version=\"1.1\" viewBox=\"0 0 390 390\" width=\"300\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><defs><g class=\"white queen\" fill=\"#fff\" fill-rule=\"evenodd\" id=\"white-queen\" stroke=\"#000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"><path d=\"M8 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM24.5 7.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM41 12a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM16 8.5a2 2 0 1 1-4 0 2 2 0 1 1 4 0zM33 9a2 2 0 1 1-4 0 2 2 0 1 1 4 0z\" /><path d=\"M9 26c8.5-1.5 21-1.5 27 0l2-12-7 11V11l-5.5 13.5-3-15-3 15-5.5-14V25L7 14l2 12zM9 26c0 2 1.5 2 2.5 4 1 1.5 1 1 .5 3.5-1.5 1-1.5 2.5-1.5 2.5-1.5 1.5.5 2.5.5 2.5 6.5 1 16.5 1 23 0 0 0 1.5-1 0-2.5 0 0 .5-1.5-1-2.5-.5-2.5-.5-2 .5-3.5 1-2 2.5-2 2.5-4-8.5-1.5-18.5-1.5-27 0z\" stroke-linecap=\"butt\" /><path d=\"M11.5 30c3.5-1 18.5-1 22 0M12 33.5c6-1 15-1 21 0\" fill=\"none\" /></g></defs><rect fill=\"#212121\" height=\"390\" width=\"390\" x=\"0\" y=\"0\" /><rect class=\"square dark a1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"330\" /><rect class=\"square light b1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"330\" /><rect class=\"square dark c1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"330\" /><rect class=\"square light d1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"330\" /><rect class=\"square dark e1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"330\" /><use transform=\"translate(195, 330)\" xlink:href=\"#white-queen\" /><rect class=\"square light f1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"330\" /><rect class=\"square dark g1\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"330\" /><rect class=\"square light h1\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"330\" /><rect class=\"square light a2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"285\" /><rect class=\"square dark b2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"285\" /><rect class=\"square light c2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"285\" /><rect class=\"square dark d2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"285\" /><rect class=\"square light e2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"285\" /><rect class=\"square dark f2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"285\" /><rect class=\"square light g2\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"285\" /><use transform=\"translate(285, 285)\" xlink:href=\"#white-queen\" /><rect class=\"square dark h2\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"285\" /><rect class=\"square dark a3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"240\" /><use transform=\"translate(15, 240)\" xlink:href=\"#white-queen\" /><rect class=\"square light b3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"240\" /><rect class=\"square dark c3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"240\" /><rect class=\"square light d3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"240\" /><rect class=\"square dark e3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"240\" /><rect class=\"square light f3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"240\" /><rect class=\"square dark g3\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"240\" /><rect class=\"square light h3\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"240\" /><rect class=\"square light a4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"195\" /><rect class=\"square dark b4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"195\" /><rect class=\"square light c4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"195\" /><rect class=\"square dark d4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"195\" /><use transform=\"translate(150, 195)\" xlink:href=\"#white-queen\" /><rect class=\"square light e4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"195\" /><rect class=\"square dark f4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"195\" /><rect class=\"square light g4\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"195\" /><rect class=\"square dark h4\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"195\" /><rect class=\"square dark a5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"150\" /><rect class=\"square light b5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"150\" /><use transform=\"translate(60, 150)\" xlink:href=\"#white-queen\" /><rect class=\"square dark c5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"150\" /><rect class=\"square light d5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"150\" /><rect class=\"square dark e5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"150\" /><rect class=\"square light f5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"150\" /><rect class=\"square dark g5\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"150\" /><rect class=\"square light h5\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"150\" /><rect class=\"square light a6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"105\" /><rect class=\"square dark b6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"105\" /><rect class=\"square light c6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"105\" /><rect class=\"square dark d6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"105\" /><rect class=\"square light e6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"105\" /><rect class=\"square dark f6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"105\" /><rect class=\"square light g6\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"105\" /><rect class=\"square dark h6\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"105\" /><use transform=\"translate(330, 105)\" xlink:href=\"#white-queen\" /><rect class=\"square dark a7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"60\" /><rect class=\"square light b7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"60\" /><rect class=\"square dark c7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"60\" /><rect class=\"square light d7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"60\" /><rect class=\"square dark e7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"60\" /><rect class=\"square light f7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"60\" /><use transform=\"translate(240, 60)\" xlink:href=\"#white-queen\" /><rect class=\"square dark g7\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"60\" /><rect class=\"square light h7\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"60\" /><rect class=\"square light a8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"15\" y=\"15\" /><rect class=\"square dark b8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"60\" y=\"15\" /><rect class=\"square light c8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"105\" y=\"15\" /><use transform=\"translate(105, 15)\" xlink:href=\"#white-queen\" /><rect class=\"square dark d8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"150\" y=\"15\" /><rect class=\"square light e8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"195\" y=\"15\" /><rect class=\"square dark f8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"240\" y=\"15\" /><rect class=\"square light g8\" fill=\"#ffce9e\" height=\"45\" stroke=\"none\" width=\"45\" x=\"285\" y=\"15\" /><rect class=\"square dark h8\" fill=\"#d18b47\" height=\"45\" stroke=\"none\" width=\"45\" x=\"330\" y=\"15\" /><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 0) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(20, 375) scale(0.75, 0.75)\"><path d=\"M23.328 10.016q-1.742 0-2.414.398-.672.398-.672 1.36 0 .765.5 1.218.508.445 1.375.445 1.196 0 1.914-.843.727-.852.727-2.258v-.32zm2.867-.594v4.992h-1.437v-1.328q-.492.797-1.227 1.18-.734.375-1.797.375-1.343 0-2.14-.75-.79-.758-.79-2.024 0-1.476.985-2.226.992-.75 2.953-.75h2.016V8.75q0-.992-.656-1.531-.649-.547-1.829-.547-.75 0-1.46.18-.711.18-1.368.539V6.062q.79-.304 1.532-.453.742-.156 1.445-.156 1.898 0 2.836.984.937.985.937 2.985z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 0) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(65, 375) scale(0.75, 0.75)\"><path d=\"M24.922 10.047q0-1.586-.656-2.485-.649-.906-1.79-.906-1.14 0-1.796.906-.649.899-.649 2.485 0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.789-.898.656-.906.656-2.492zm-4.89-3.055q.452-.781 1.14-1.156.695-.383 1.656-.383 1.594 0 2.586 1.266 1 1.265 1 3.328 0 2.062-1 3.328-.992 1.266-2.586 1.266-.96 0-1.656-.375-.688-.383-1.14-1.164v1.312h-1.446V2.258h1.445z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 0) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(110, 375) scale(0.75, 0.75)\"><path d=\"M25.96 6v1.344q-.608-.336-1.226-.5-.609-.172-1.234-.172-1.398 0-2.172.89-.773.883-.773 2.485 0 1.601.773 2.492.774.883 2.172.883.625 0 1.234-.164.618-.172 1.227-.508v1.328q-.602.281-1.25.422-.64.14-1.367.14-1.977 0-3.14-1.242-1.165-1.242-1.165-3.351 0-2.14 1.172-3.367 1.18-1.227 3.227-1.227.664 0 1.296.14.633.134 1.227.407z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 0) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(155, 375) scale(0.75, 0.75)\"><path d=\"M24.973 6.992V2.258h1.437v12.156h-1.437v-1.312q-.453.78-1.149 1.164-.687.375-1.656.375-1.586 0-2.586-1.266-.992-1.266-.992-3.328 0-2.063.992-3.328 1-1.266 2.586-1.266.969 0 1.656.383.696.375 1.149 1.156zm-4.899 3.055q0 1.586.649 2.492.656.898 1.797.898 1.14 0 1.796-.898.657-.906.657-2.492 0-1.586-.657-2.485-.656-.906-1.796-.906-1.141 0-1.797.906-.649.899-.649 2.485z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 0) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(200, 375) scale(0.75, 0.75)\"><path d=\"M26.555 9.68v.703h-6.61q.094 1.484.89 2.265.806.774 2.235.774.828 0 1.602-.203.781-.203 1.547-.61v1.36q-.774.328-1.586.5-.813.172-1.649.172-2.093 0-3.32-1.22-1.219-1.218-1.219-3.296 0-2.148 1.157-3.406 1.164-1.266 3.132-1.266 1.766 0 2.79 1.14 1.03 1.134 1.03 3.087zm-1.438-.422q-.015-1.18-.664-1.883-.64-.703-1.703-.703-1.203 0-1.93.68-.718.68-.828 1.914z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 0) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(245, 375) scale(0.75, 0.75)\"><path d=\"M25.285 2.258v1.195H23.91q-.773 0-1.078.313-.297.312-.297 1.125v.773h2.367v1.117h-2.367v7.633H21.09V6.781h-1.375V5.664h1.375v-.61q0-1.46.68-2.124.68-.672 2.156-.672z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 0) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(290, 375) scale(0.75, 0.75)\"><path d=\"M24.973 9.937q0-1.562-.649-2.421-.64-.86-1.804-.86-1.157 0-1.805.86-.64.859-.64 2.421 0 1.555.64 2.415.648.859 1.805.859 1.164 0 1.804-.86.649-.859.649-2.414zm1.437 3.391q0 2.234-.992 3.32-.992 1.094-3.04 1.094-.757 0-1.429-.117-.672-.11-1.304-.344v-1.398q.632.344 1.25.508.617.164 1.257.164 1.414 0 2.118-.743.703-.734.703-2.226v-.711q-.446.773-1.141 1.156-.695.383-1.664.383-1.61 0-2.594-1.227-.984-1.226-.984-3.25 0-2.03.984-3.257.985-1.227 2.594-1.227.969 0 1.664.383t1.14 1.156V5.664h1.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 0) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(335, 375) scale(0.75, 0.75)\"><path d=\"M26.164 9.133v5.281h-1.437V9.18q0-1.243-.485-1.86-.484-.617-1.453-.617-1.164 0-1.836.742-.672.742-.672 2.024v4.945h-1.445V2.258h1.445v4.765q.516-.789 1.211-1.18.703-.39 1.617-.39 1.508 0 2.282.938.773.93.773 2.742z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 335) scale(0.75, 0.75)\"><path d=\"M6.754 26.996h2.578v-8.898l-2.805.562v-1.437l2.79-.563h1.578v10.336h2.578v1.328h-6.72z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 290) scale(0.75, 0.75)\"><path d=\"M8.195 26.996h5.508v1.328H6.297v-1.328q.898-.93 2.445-2.492 1.555-1.57 1.953-2.024.758-.851 1.055-1.437.305-.594.305-1.164 0-.93-.657-1.516-.648-.586-1.695-.586-.742 0-1.57.258-.82.258-1.758.781v-1.593q.953-.383 1.781-.578.828-.196 1.516-.196 1.812 0 2.89.906 1.079.907 1.079 2.422 0 .72-.274 1.368-.265.64-.976 1.515-.196.227-1.243 1.313-1.046 1.078-2.953 3.023z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 245) scale(0.75, 0.75)\"><path d=\"M11.434 22.035q1.132.242 1.765 1.008.64.766.64 1.89 0 1.727-1.187 2.672-1.187.946-3.375.946-.734 0-1.515-.149-.774-.14-1.602-.43V26.45q.656.383 1.438.578.78.196 1.632.196 1.485 0 2.258-.586.782-.586.782-1.703 0-1.032-.727-1.61-.719-.586-2.008-.586h-1.36v-1.297h1.423q1.164 0 1.78-.46.618-.47.618-1.344 0-.899-.64-1.375-.633-.485-1.82-.485-.65 0-1.391.141-.743.14-1.633.437V16.95q.898-.25 1.68-.375.788-.125 1.484-.125 1.797 0 2.844.82 1.046.813 1.046 2.204 0 .968-.554 1.64-.555.664-1.578.922z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 200) scale(0.75, 0.75)\"><path d=\"M11.016 18.035L7.03 24.262h3.985zm-.414-1.375h1.984v7.602h1.664v1.312h-1.664v2.75h-1.57v-2.75H5.75v-1.523z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 155) scale(0.75, 0.75)\"><path d=\"M6.719 16.66h6.195v1.328h-4.75v2.86q.344-.118.688-.172.343-.063.687-.063 1.953 0 3.094 1.07 1.14 1.07 1.14 2.899 0 1.883-1.171 2.93-1.172 1.039-3.305 1.039-.735 0-1.5-.125-.758-.125-1.57-.375v-1.586q.703.383 1.453.57.75.188 1.586.188 1.351 0 2.14-.711.79-.711.79-1.93 0-1.219-.79-1.93-.789-.71-2.14-.71-.633 0-1.266.14-.625.14-1.281.438z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 110) scale(0.75, 0.75)\"><path d=\"M10.137 21.863q-1.063 0-1.688.727-.617.726-.617 1.992 0 1.258.617 1.992.625.727 1.688.727 1.062 0 1.68-.727.624-.734.624-1.992 0-1.266-.625-1.992-.617-.727-1.68-.727zm3.133-4.945v1.437q-.594-.28-1.204-.43-.601-.148-1.195-.148-1.562 0-2.39 1.055-.82 1.055-.938 3.188.46-.68 1.156-1.04.696-.367 1.531-.367 1.758 0 2.774 1.07 1.023 1.063 1.023 2.899 0 1.797-1.062 2.883-1.063 1.086-2.828 1.086-2.024 0-3.094-1.547-1.07-1.555-1.07-4.5 0-2.766 1.312-4.406 1.313-1.649 3.524-1.649.593 0 1.195.117.61.118 1.266.352z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 65) scale(0.75, 0.75)\"><path d=\"M6.25 16.66h7.5v.672L9.516 28.324H7.867l3.985-10.336H6.25z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(0, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g><g fill=\"#e5e5e5\" stroke=\"#e5e5e5\" transform=\"translate(375, 20) scale(0.75, 0.75)\"><path d=\"M10 22.785q-1.125 0-1.773.602-.641.601-.641 1.656t.64 1.656q.649.602 1.774.602t1.773-.602q.649-.61.649-1.656 0-1.055-.649-1.656-.64-.602-1.773-.602zm-1.578-.672q-1.016-.25-1.586-.945-.563-.695-.563-1.695 0-1.399.993-2.211 1-.813 2.734-.813 1.742 0 2.734.813.993.812.993 2.21 0 1-.57 1.696-.563.695-1.571.945 1.14.266 1.773 1.04.641.773.641 1.89 0 1.695-1.04 2.602-1.03.906-2.96.906t-2.969-.906Q6 26.738 6 25.043q0-1.117.64-1.89.641-.774 1.782-1.04zm-.578-2.492q0 .906.562 1.414.57.508 1.594.508 1.016 0 1.586-.508.578-.508.578-1.414 0-.906-.578-1.414-.57-.508-1.586-.508-1.023 0-1.594.508-.562.508-.562 1.414z\" /></g></svg>'"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "iteration 521 - best particle: [2 5 7 1 3 0 6 4], score: 28\n"
     ]
    }
   ],
   "source": [
    "best_particle, scores = particle_swarm_optimization(\n",
    "    N=8, omega=1, phip=8, phig=2,\n",
    "    n_particles=50, visualize=True\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_scores(scores)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
